#include"f.h"
using namespace std;

class test {
public:
	void t() {
		cout << a << endl;
	}
	
	static void show() {
		cout << b << endl;
	}
	void minu() {
		b--;
		a--;
	}
private:
	int a;
	static int b;
};

int test::b = 4;



//void fun(int *s)
//{
//	int a = 6;
//	s = &a;
//	cout << s << endl;
//}
//
//struct h_t {
//	char head;
//	char tail;
//};
//
//int soda(int a) {
//	int res = 0;
//	while (a >= 3) {
//		res = res + a / 3;
//		a = a / 3 + a % 3;
//	}
//	if (a == 2) res++;
//	return res;
//}
//
class Solution
{
public:
	//Insert one char from stringstream
	vector<char> data;
	set<char>temp;
	void Insert(char ch)
	{
		int size = temp.size();
		temp.insert(ch);
		if (size != temp.size()) data.push_back(ch);
		else {
			vector<char>::iterator it = find(data.begin(), data.end(), ch);
			data.erase(it);
		}
	}
	//return the first appearence once char in current stringstream
	char FirstAppearingOnce()
	{
		if (data.size() == 0) return '#';
		else return data[0];
	}

};

void stest() {
	static int aaaa = 1;
}

int main() {
	//char *s = "hello world";
	//int l = strlen(s);
	//char b = '0';
	//cout << b;
	//replaceSpace(s, l);
	//string a = "1";
	//a = a + s[0];
	//cout << a << endl;
	//vector<int> a={}
	//jumpFloorII(5);
	//cout<<GetUglyNumber_Solution(8);
	//string a = "abcXYZdef";
	//if (a[0] == a[2]) cout << "dd";
	//cout << FirstNotRepeatingChar(a);
	//cout<<LeftRotateString(a,3);

	//class etest :public test {
	//public:
	//	void show() {
	//		t();
	//	}
	//	int vt() {
	//		cout << "ddd" << endl;
	//	}
	//};
	//etest p;
	//
	//p.show();
	//p.t();
	//system("pause");

	//int ab[10] = { 1,2,3,6,7 };
	//char a[6] = { 'h','a','p','p','y','\0' };
	//char ac[] = "happy";
	//cout << ac << endl;
	//cout << ac << endl;
	//cout << ab << endl;


	//union t {
	//	int a;
	//	int b;
	//};
	//t p;
	//p.a = 1;
	//cout << p.b << endl;
	//cout << p.a << endl;

	//string s = "a45 5";
	//if (s[0] >='0'&&s[0]<='9') cout << 5 << endl;
	//vector<string> t = split(a, ";");

	//cout << inputcheck(r) << endl;
	//for (int i = 0; i < r.size(); i++) cout << r[i] << endl;
	/*string b = "asdf";
	int t;
	try {
	t = stoi(b);
	}
	catch(invalid_argument err){
	cout << "ddd" << endl;
	}*/
	/*int sysnum, relynum;
	cin >> sysnum >> relynum;
	vector<int> systime;
	for (int i = 0; i < sysnum; i++) {
	int time;
	cin >> time;
	systime.push_back(time);
	}
	vector<int> head;
	vector<int> tail;
	vector<vector<int>> relyre;
	for (int i = 0; i < relynum; i++) {
	int a, b;
	cin >> a >> b;
	head.push_back(a);
	tail.push_back(b);
	}
	for (int i = 0; i < relynum; i++) {
	vector<int>::iterator result;
	result = find(head.begin(), head.end(), tail[i]);
	if (result != head.end()) {
	vector<int> temp;
	temp.push_back(head[i]);
	temp.push_back(tail[i]);
	}
	while()
	}*/
	/*ListNode* p1, *p2, *p3, *p4, *p5, *p6, *res;
	p1 = new ListNode(1);
	p2 = new ListNode(5);
	p3 = new ListNode(6);
	p4 = new ListNode(3);
	p5 = new ListNode(7);
	p6 = new ListNode(8);
	p1->next = nullptr;
	p2->next = p3;
	p3->next = nullptr;
	p4->next = nullptr;
	p5->next = p6;
	p6->next = nullptr;
	res = Merge(p1, p4);
	while (res!= nullptr) {
	cout << res->val << endl;
	res = res->next;
	}*/

	/*int n, res = 0;
	cin >> n;
	vector<int> data;
	for (int i = 0; i < n; i++) {
	int temp;
	cin >> temp;
	data.push_back(temp);
	}
	for (int i = 0; i < n; i++) {
	while (data[i] % 2 == 0) {
	res++;
	data[i] = data[i] / 2;
	}
	}
	cout << res << endl;*/

	/*int x, y;
	string res;
	cin >> x>> y;
	if (x == y) res = "=";
	else {
	double t = double(y) / double(x)*log10(double(x)) / log10(double(y));
	if (t > 1) res = ">";
	else res = "<";
	}
	cout << res << endl;*/

	/*int n, k,res=0;
	cin >> n>>k;
	int minval = n + 1;
	int minindex = 0;
	if (n == k) {
	cout << 1 << endl;
	return 0;
	}
	for (int i = 0; i < n; i++) {
	int temp;
	cin >> temp;
	if (temp < minval) {
	minval = temp;
	minindex = i;
	}
	}
	int first = minindex+1;
	int second = n - minindex;
	int res1, res2;
	if (first == 1) res1 = 0;
	else {
	if ((first - 1) % (k - 1) == 0) res1 = (first - 1) / (k-1);
	else 	res1 = (first - 1) / (k - 1) + 1;
	}
	if (second == 1) res2 = 0;
	else {
	if ((second - 1) % (k - 1) == 0) res2 = (second - 1) / (k - 1);
	else res2 = (second - 1) / (k - 1) + 1;
	}
	res = res1 + res2;
	cout << res << endl;*/

	//int x, y,up=1,down=1;
	//scanf_s("%d,%d", &x, &y);
	//int sum = x + y;
	//while (x != 0) {
	//	up = up*x;
	//	down = down*sum;
	//	cout << down << endl;
	//	sum--;
	//	x--;
	//}
	//cout << down / up << endl;

	//int c,res;
	//vector<int> m;
	//while (cin >> c) {
	//	m.push_back(c);
	//}
	//sort(m.begin(), m.end());
	//int index = m.size();
	//if (index % 2 != 0) res = m[index / 2];
	//else {
	//	if (m[index / 2] == m[(index / 2) + 1]) res = m[index / 2];
	//	else res = m[(index / 2) - 1];
	//}
	//cout << res << endl;

	/*string s;
	vector<string> data,res;
	while (cin >> s) data.push_back(s);
	for (int i = 0; i < data.size(); i++) {
	vector<string>::iterator it;
	it = find(res.begin(), res.end(), data[i]);
	if (it == res.end()) res.push_back(data[i]);
	}
	cout << res.size() << endl;*/

	//vector<int> data;
	//int t;
	//while (cin >> t) {
	//	if (t == 0) break;
	//	data.push_back(t);
	//}
	//for (int i = 0; i < data.size(); i++) cout << soda(data[i]) << endl;

	class dfdfdfdf {
	public:
		dfdfdfdf(int x) { 
			a = x; 
			cout << "dd" << endl;
		};
	private:
		int a;
	};
	char *c = "hello w";
	//FindContinuousSequence(9);
	//string s1 = "545", s2 = "54";
	//auto t = s2.find(s1);
	//if (t!=string::npos) cout << "d";

	vector<int> data{34, 3};
	cout<<PrintMinNumber(data);

	//vector<int> data{ 1,5,6,7,2,3,6,5,7,98 };
	//merge_sort(data, 0, data.size() - 1);
	//cout << "dd" << endl;
	//for (auto val : data) cout << val << endl;
	//findLCS("1A2C3D4B56", 10, "B1D23CA45B6A", 12);

	//return the first appearence once char in current stringstream
	//grade();
	//string s = "  ";
	//vector<int> t{ 1,2,3 };
	//vector<int>::iterator it = t.begin();
	//vector<string> t = split(s," ");
	/*string s;
	cin >> s;
	int count = 0, max = -1, tail;
	for (int i = 0; i < s.size(); i++) {
		if (s[i] >= '0'&&'9' >= s[i]) count++;
		else {
			if (count >= max) {
				max = count;
				tail = i;
			}
			count = 0;
		}
		cout << tail<<" " <<max<< endl;
	}
	if (count >= max) {
		max = count;
		tail = s.size() - 1;
	}
	cout << s.substr(tail - count + 1, tail) << endl;*/
	system("pause");
	return 0;
}